草庐IT

php - 组数组数据 PHP

全部标签

ruby - 有没有办法在不将整个文件加载到数组中的情况下搜索文件?

这个有效:f=File.new("myfile").readlinesf[0]#=>"line1"f[21]#=>"line22"但是如果我有一个非常大的文件,并且只需要读取几行怎么办?是否可以在不将文件加载到数组的情况下查找特定行并在Ruby中读取它们?我理解IO流,其中(就像在stdin的情况下)您不能随机搜索流。当然,必须有一种方法可以在不加载整个文件的情况下执行此操作。 最佳答案 不要忽略IO类。IO::foreach是返回枚举器的方法之一,可以延迟计算。IO#each_line也是将返回枚举器的另一个。在Ruby2.0中,

arrays - 如何从数组中删除位于另一个数组索引处的元素

我有两个数组,一个包含数据,一个包含索引。我想知道是否有一些好的方法可以删除indexes中给定位置的data中的元素。我可以做简单的迭代,但我想知道最短的方法是什么:data=['a','b','c','a','b','c','a','b','c']indexes=[2,5,8]//somecodeheredata中的元素在索引恰好与数组索引中的数字重合时消失。它应该看起来像这样:['a','b','a','b','a','b'] 最佳答案 data.values_at(*data.each_index.to_a-indexes)

arrays - 在 ruby​​ 中巧妙地将散列数组转换为 CSV

我需要转换CSV文件中的哈希数组。我发现的各种方法涉及在数组中插入哈希值:classArraydefto_csv(csv_filename="hash.csv")require'csv'CSV.open(csv_filename,"wb")do|csv|csv不幸的是,这个方法要求数组中的每个元素都是完整的,例如,当我有这个数组时,它甚至不会返回有效的csv:myarray=[{foo:1,bar:2,baz:3},{bar:2,baz:3},{foo:2,bar:4,baz:9,zab:44}]我正在寻找一种创建csv的方法,它可以找到所有可能的header,并以正确的顺序分配值,并

Ruby - 数据库的日期时间

我有一个语法为“0000-00-0000:00:00”的数据库列。在PHP中我会做date('Y-m-dH:i:s');在Ruby中,我会require'date'now=DateTime::now()puts"#{now.year()}-#{now.mon()}-#{now.mday()}#{now.hour()}:#{now.min()}:#{now.sec()}"结果是:“2010-1-510:16:4”那不行。如何创建格式为“0000-00-0000:00:00”的“时间字符串”?提前致谢并致以最诚挚的问候 最佳答案 借助内

ruby - 迭代数组的 'Ruby way' 是什么——从数组 [n] 到数组 [n - 1]?

假设我有一个大小5的数组。我想将一个索引(从0-4)作为输入,并从提供的索引开始遍历该数组。例如,如果给定的索引是3,我想像这样迭代:arr[3]arr[4]arr[0]arr[1]arr[2]我可以想出很多方法来做到这一点-但Ruby的方式是什么? 最佳答案 您可以使用1.9.2版本的Array#rotate[4,3,6,7,8].rotate(2).each{|i|printi}67843 关于ruby-迭代数组的'Rubyway'是什么——从数组[n]到数组[n-1]?,我们在St

ruby - 如何在 Sequel ORM 中将行作为数组(而不是哈希)获取?

在SequelRuby的ORM,Dataset类有一个all方法,它生成一个行散列数组:每一行都是一个以列名作为键的散列。例如,给定一个表T:abc--------------022"Abe"135"Betty"258"Chris"然后:ds=DB['selecta,b,cfromT']ah=ds.all#ArrayofrowHashes应该产生:[{"a":0,"b":22,"c":"Abe"},{"a":1,"b":35,"c":"Betty"},{"a":2,"b":58,"c":"Chris"}]Sequel中是否有一种方法可以代替生成行数组的数组,其中每一行都是一个仅包含每一

ruby-on-rails - 如何将数据从我的生产数据库传输到 heroku 中的登台数据库?

我正在尝试将数据从我的生产数据库传输到我的登台数据库,但没有成功。我正在关注heroku的相关文档:http://devcenter.heroku.com/articles/pgbackups#transfers这些是我运行的命令...$herokuaddons:addpgbackups--remotestaging$herokuaddons:addpgbackups--remoteproduction$herokupgbackups:capture--remoteproduction$herokupgbackups:restoreDATABASE`herokupgbackups:ur

ruby-on-rails - 使用 rails 回形针插件将图像存储在数据库中

我有一个使用Paperclip插件上传图片的应用程序。现在该应用程序应该部署到具有只读文件系统的主机(heroku)。我能以某种方式告诉回形针将图像存储在数据库中吗? 最佳答案 查看此示例应用http://patshaughnessy.net/2009/5/29/paperclip-sample-app-part-3-saving-file-attachments-in-a-database-blob-column我想这正是您所需要的。HTHPS:将图像存储在数据库中通常不是一个好主意,我相信您可以将paperclip与S3/clo

ruby-on-rails - 循环遍历 ruby​​ (rails) 中的一组分组数据

假设您有一个这样的有序数组,从地址数据库生成:[{city:Sacramento,state:CA},{city:SanFrancisco,state:CA},{city:Seattle,state:WA}]并且您想像这样生成HTML:CASacramentoSanFranciscoWASeattle所以你是按州分组的。这样做的一种方法是记住循环每次迭代的最后一行,并且仅当当前行的状态与最后一行的状态相同时才显示状态和书尾UL标记。这看起来有点讨厌而且不是Ruby-y。有人对优雅的Ruby/Rails方法有任何建议吗? 最佳答案 E

ruby - 从对象数组中获取包含特定值的数组的最 Rubyish 方式?

我有一组ruby​​对象,看起来像这样:[#,#,#]数组中的每个对象都有一个email属性。我想获取数组中ruby​​对象的所有电子邮件属性的新数组。执行代码后,我将得到一个如下所示的数组:["email@example.com","anotheremail@gmail.com",...]我是ruby​​的新手,想以最像ruby​​ish的方式来做这件事。我的问题是,在ruby​​中执行此操作的最佳方法是什么? 最佳答案 您可以使用map方法将block应用于数组的每个元素,返回一个包含每次调用结果的新数组:somearray.m